#ifndef TRIGGER_H
#define TRIGGER_H

class Trigger
{
public:
    virtual bool trig(int, Actor *, Actor *) = 0;
    virtual void applyCurrentState(Actor *) = 0;
};


class Door : public Trigger
{
public:
    Door();
    bool trig(int, Actor *, Actor *);
    void applyCurrentState(Actor *);

    enum States {Unknown, Opened, Closed, Locked, MaxStates};
private:

    States state;
    //bool locked;
    char charForState[MaxStates];
    TCODColor colForState[MaxStates];
};


#endif // TRIGGER_H
